package org.no_ip.martin_springwald.google.api.extension.docs;

import com.google.gwt.core.client.JavaScriptObject;

/**
 * DocumentsListArchiveEntry (DocsService)
 * 
 * @.dependencies gwt-gdata, GWT SDK 2.4
 */
public class DocumentsListArchiveEntry extends com.google.gwt.gdata.client.Entry<DocumentsListArchiveEntry> {

	// retrieve links and categories, extended from default functions
	/** getDocumentEntryLinks: <p>Retrieves all links contained in entry.</p> */
	public final native DocumentsListEntryLink[] getDocumentEntryLinks() /*-{ if (this.link) { return @com.google.gwt.gdata.client.impl.ArrayHelper::toArray(Lcom/google/gwt/core/client/JsArray;)(this.link); } else { return new Array(); } }-*/;
	/** getDocumentEntryCategories: <p>Retrieves all categories contained in entry.</p> */
	public final native DocumentsListEntryCategory[] getDocumentEntryCategories() /*-{ if (this.category) { return @com.google.gwt.gdata.client.impl.ArrayHelper::toArray(Lcom/google/gwt/core/client/JsArray;)(this.category); } else { return new Array(); } }-*/;

	// getters
	/** getContentType: <p>Retrieves the (mime) type of the content.</p> */
	public final native String getContentType() /*-{ if (this.content) { return this.content.type; } else { return ""; } }-*/;
	/** getContentSrc: <p>Retrieves the content (usually as link).</p> */
	public final native String getContentSrc() /*-{ if (this.content) { return this.content.src; } else { return ""; } }-*/;
	/** getQuotaBytesUsed: <p>Retrieves used up quota</p> */
	public final native String getQuotaBytesUsed() /*-{ if (this.gd$quotaBytesUsed) { return this.gd$quotaBytesUsed.$t; } else { return ""; } }-*/;
	/** getArchiveNotify: <p>Retrieves 'archiveNotify' value.</p> */
	public final native String getArchiveNotify() /*-{ if (this.docs$archiveNotify) { return this.docs$archiveNotify.$t; } else { return ""; } }-*/;
	/** getArchiveStatus: <p>Retrieves 'archiveStatus' value.</p> */
	public final native String getArchiveStatus() /*-{ if (this.docs$archiveStatus) { return this.docs$archiveStatus.$t; } else { return ""; } }-*/;
	/** getArchiveResourceId: <p>Retrieves 'archiveResourceId' value.</p> */
	public final native String getArchiveResourceId() /*-{ if (this.docs$archiveResourceId) { return this.docs$archiveResourceId.$t; } else { return ""; } }-*/;
	/** getArchiveConversion: <p>Retrieves 'archiveConversion' value.</p> */
	public final native String getArchiveConversion() /*-{ if (this.docs$archiveConversion) { return this.docs$archiveConversion.$t; } else { return ""; } }-*/;
	/** getArchiveComplete: <p>Retrieves 'archiveComplete' value.</p> */
	public final native String getArchiveComplete() /*-{ if (this.docs$archiveComplete) { return this.docs$archiveComplete.$t; } else { return ""; } }-*/;
	/** getArchiveTotal: <p>Retrieves 'archiveTotal' value.</p> */
	public final native String getArchiveTotal() /*-{ if (this.docs$archiveTotal) { return this.docs$archiveTotal.$t; } else { return ""; } }-*/;
	/** getArchiveTotalComplete: <p>Retrieves 'archiveTotalComplete' value.</p> */
	public final native String getArchiveTotalComplete() /*-{ if (this.docs$archiveTotalComplete) { return this.docs$archiveTotalComplete.$t; } else { return ""; } }-*/;
	/** getArchiveTotalFailure: <p>Retrieves 'archiveTotalFailure' value.</p> */
	public final native String getArchiveTotalFailure() /*-{ if (this.docs$archiveTotalFailure) { return this.docs$archiveTotalFailure.$t; } else { return ""; } }-*/;
	/** getArchiveFailure: <p>Retrieves 'archiveFailure' value.</p> */
	public final native String getArchiveFailure() /*-{ if (this.docs$archiveFailure) { return this.docs$archiveFailure.$t; } else { return ""; } }-*/;

	// constructors
	/**
	 * newInstance: <p>Creates new ArchiveEntry instance.</p>
	 * @return DocumentsListArchiveEntry
	 */
	public static native DocumentsListArchiveEntry newInstance() /*-{ return new $wnd.google.gdata.Entry(); }-*/;
	protected DocumentsListArchiveEntry() { }
	public static final native JavaScriptObject getConstructor() /*-{ return $wnd.google.gdata.Entry; }-*/;

}